<%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>

//应用上下文:document
//var _documentContext = "<%=request.getContextPath() %>";

//各业务模块，必须定义的变量（框架issue.js文件中需用到，不要修改变量名）
var _title;	//业务标题
var _issueId; //业务主键
var _issueType="todo";
var _workEffortId = "isNew";

var _doSurplusWork = _documentContext + "/docDispatch/doSurplusWork";//（流程启动成功后业务数据的相关操作）业务模块自己定义的业务处理方法，以供框架在提交完成后，进行触发

var limitObj=new Object();//用于保存word正文控制大小信息对象  limitObj.num限制大小  limitObj.str限制大小对应提示文字
limitObj.num=104857600;//默认10M
limitObj.str="100M";//默认10M

var officeData=new Array();//正文数据
var _formId = "<c:out value='${formId}'/>";//表单id
var _ajaxLoaderTip = '<tr><td style=text-align:center><img style="vertical-align:middle" src=<c:url value="/images/ajaxLoader.gif"/>>正在加载数据，请稍候！</td></tr>';

/**
 * 业务数据初始化
 */
$(function(){
	$("#hide_").hide();
	$("#hide_expeireTime").hide();
	
	_issueId=$("#docId").val();
	var docId=$("#docId").val();//流程id,查询已有附件条件
//	var controlId="fileUpload";//自定义控件名前缀
//	var delFlag="1";//显示删除按钮：0，不显示；1，显示
//	var addFlag="1";//添加按钮可用：0，不可用；1，可用
//	var showControlFlag="1";//显示file控件和上传按钮：0，不显示；1，显示
//	//var docType="";//流程状态：为done时候控制file控件和上传按钮不显示----issue.js已有	
//	
//	var attachNo="0";//查询已有附件条件
//	var attachVersion="0";//查询已有附件条件
//	var attachType="AS";//查询已有附件条件
//	
//	$("#fileDiv").panel({
//	    href:_synergyContext+'/basic/synAttach/gotoSynAttachPage?docId='
//	    	+docId+'&controlId='+controlId+'&delFlag='+delFlag+'&addFlag='+addFlag
//	    	+'&showControlFlag='+showControlFlag+'&docType='+_issueType
//	    	+"&attachNo="+attachNo+"&attachVersion="+attachVersion
//			   +"&attachType="+attachType,
//	    border:false,//不显示边框
//	    cache:false//不从缓存加载面板
//	});
	
	
	
	
	addValid();
	//if($.type(inintCorrelationIssuePage) == "function"){ 
//		inintCorrelationIssuePage();
	//}
	var displayNumberReceive = $("#displayNumberReceive").val();
	if(displayNumberReceive==null||displayNumberReceive==''){
		buildDisplayNumberDiv($("#formType").val());
	}else{
		var numArray = displayNumberReceive.split("-");
		if($("#formType").val()=="1"){
			$("#numYear").textbox("setValue",numArray[0]);
			$("#num").textbox("setValue",numArray[1]);
		}else if($("#formType").val()=="3"){
			$('#numLine').combobox("select",numArray[0]);
			$('#numLineName').combobox("select",numArray[1]);
			$("#numYear").textbox("setValue",numArray[2]);
			$("#num").textbox("setValue",numArray[3]);
		}
	}
});

/**
 * 框架页面调用的保存方法
 */
function _saveOAdata(docState){
	if(!checkPageItems()){//页面验证不通过
		return 1;
	}
	var status = submitOAdata(docState);
	if(status != 100)
	{
		return 2;
	}
	return 0;//0:保存成功，1：验证未通过，2：数据保存错误
}

/**
 * 验证
 */
function checkPageItems(){
	return $("#docIssueForm").form('validate');
}

//保存页面数据
// 返回值100:正常、200:数据保存失败、300:正文及附件保存失败、400:附件上传失败
function submitOAdata(docState){
	//alert($('#fileUploadFileList').html()=="");判断附件是否已传
//	if(officeData.length==0){
//		$.messager.alert("提示","请编辑正文");
//		return;
//	}	
//	var type = $("#formType").val();
//	if(type=="1"){
//		$("#displayNumberReceive").val($("#numYear").val()+"-"+$("#num").val());
//	}else if(type=="2"){
//		$("#displayNumberReceive").val($("#numOrg").val()+"-"+$("#numYear").val()+"-"+$("#numMonth").val()+"-"+$("#num").val());
//	}else if(type=="3"){
//		$("#displayNumberReceive").val($('#numLine').combobox('getValue')+"-"+$('#numLineName').combobox('getValue')+"-"+$("#numYear").val()+"-"+$("#num").val());
//	}else{
//		alert("参数错误");
//		return;
//	}
//	var boolNum = false;
//	$.ajax({
//		type:"POST",
//		async:false,
//		url:'<c:url value="/receive/valNumUnique"/>', 
//		data: "docId="+_issueId+"&displayNumberReceive="+$("#displayNumberReceive").val()+"&formId="+_formId,
//		success:function(msg){
//		   if(msg.state=="200"){
//			   
//		   }else{
//			   $.messager.alert('提示',"编号冲突，请修改！");
//			   boolNum = true;
//		   }										
//		}
//	});
//	if(boolNum){
//		return;
//	}
	$("#docState").val(docState);
	$.ajax({//ajax保存表单基本信息
		   type: "POST",
		   url: "<c:url value='/receive/savePaperIssue' />",
		   data: $('#docIssueForm').serialize(),
		   dataType: "json",
		   async:false,
		   success: function(msg){
		     if(msg.state=="200"){
		    	 $("#docId").val(msg.docIssue.docId);
		    	 if(fileUploadSaveFileFt(msg.docIssue.docId,"0","0","AS","")){//保存附件
		    		 if(bindOffice(msg.docIssue.docId)){//保存正文
		    			 	if(docState=="TS"){
		    			 		$.messager.alert("提示","保存成功","info",function(){
			    			 		window.location.href="<c:url value='/receive/receviceWorkItems' />?state=TS";
			    			 	});
		    			 	}else{
		    			 		$.messager.alert("提示","提交到待分发列表成功","info",function(){
			    			 		window.location.href="<c:url value='/receive/receviceWorkItems' />?state=TS";
			    			 	});
		    			 	}
	    				}else{
	    					$.messager.alert("提示","保存正文失败"); 
	    		        }		    		 
		    	 }else{
		    		 $.messager.alert("提示","保存附件失败"); 
		    	 }
		     }else if(msg.state=="501"){
		    	 $.messager.alert("提示","编号重复，请重新生成");
		     }else{
		    	 $.messager.alert("提示","保存数据失败");
		     }
		   }
		});
}

//绑定验证
function addValid(){
	
	var editFlag = $("#docReceiveType").val()=="PR";
	
	if(editFlag){
		$("#editWord").show();
		$("#printWord,#downloadWord").hide();
	}else{
		$("#editWord").hide();
		$("#printWord,#downloadWord").show();
		$.ajax({
			   type: "POST",
			   url: "<c:url value='/receive/querySynOfficial' />",
			   data:"docId="+_issueId,
			   dataType: "json",
			   async:false,
			   success: function(msg){
			     if(msg.state=="200"){
			    	
			     }else{
			    	 $("#showDocTr").hide();
			     }
			   }
			});
	}
	
	
	var controlId="fileUpload";//自定义控件名前缀
	var delFlag=editFlag?"1":"0";//显示删除按钮：0，不显示；1，显示
	var addFlag=editFlag?"1":"0";//添加按钮可用：0，不可用；1，可用
	var showControlFlag=editFlag?"1":"0";//显示file控件和上传按钮：0，不显示；1，显示
	//var docType="";//流程状态：为done时候控制file控件和上传按钮不显示----issue.js已有	
	var attachNo="0";//查询已有附件条件
	var attachVersion="0";//查询已有附件条件
	var attachType="AS";//查询已有附件条件
	
	$("#fileDiv").panel({
	    href:_synergyContext+'/basic/synAttach/gotoSynAttachPage?docId='
	    	+_issueId+'&controlId='+controlId+'&delFlag='+delFlag+'&addFlag='+addFlag
	    	+'&showControlFlag='+showControlFlag+'&docType='+_issueType
	    	+"&attachNo="+attachNo+"&attachVersion="+attachVersion
			   +"&attachType="+attachType,
	    border:false,//不显示边框
	    cache:false//不从缓存加载面板
	});
	
	//标题
	$("#docName").textbox({
	    required: true,
	    validType:'length[1,100]'
	});
	
	$("#num").textbox({
	    required: true,
	    validType:'valNumUnique',
	    validateOnBlur:true,
	    validateOnCreate:false
	});
	$("#dispatchOrg").textbox({
	    required: true
	});
	
	$("#displayNumber").textbox({
		editable:editFlag
	});
	
	//份数
	$("#printNum").numberbox({
//	    required: true,
	    min:1,
	    precision:0
	});
	
	//正文页数
	$("#pageNum").numberbox({
//		required: true,
	    min:1,
	    precision:0
	});
	
	//是否公开
	$('#remark').combobox({
		editable:false, 
		required: true,
		validType: 'selectValueRequired'
	});	
	
	$("#numberTime").textbox({
		editable:false
	});
	
	$("#expeireTime").datebox({
		editable:false
	}).datebox('calendar').calendar({
        validator: function(value){
            var now = new Date();
            var d1 = new Date(now.getFullYear(), now.getMonth(), now.getDate())
            return value >= d1;
        }
    });
	
	//摘要
//	$("#receiveRemark").textbox({
//		multiline:true,
//		required:true
//		
//	});
	
	//是否显示摘要
//	$("input[name='isReceiveRemark']").click(function(){
//		changeReceiveRemarkTR();
//	});
//	changeReceiveRemarkTR();//初始化调用次，显示或者隐藏摘要
	//归档分类
//	$('#archiveCategoryId').combobox({
//		editable:false, 
//		validType: 'selectValueRequired',
//		novalidate:true,
//		onSelect:function(record){
//			$("#archiveCategoryName").val(record.value==""?"":record.text);
//		}
//	});
//	$("#archiveSaveDeadline").combobox({
//		editable:false,
//		validType: 'selectValueRequired',
//		novalidate:true
//	});

	$("#isArchive").combobox({
		editable:false,
		onSelect:function(record){
//			if(record.value=='1'){
//				$('#archiveSaveDeadline,#archiveCategoryId').combobox('enableValidation');
//			}else{
//				$('#archiveSaveDeadline,#archiveCategoryId').combobox('disableValidation');
//			}
		}
	});
	
	$('#numLine').combobox({
		editable:false, 
		onChange:function(newVal,oldVal){
			buildDisplayNumberDiv($("#formType").val());
		}
	});
	$('#numLineName').combobox({
		editable:false, 
		onChange:function(record){
			buildDisplayNumberDiv($("#formType").val());
		}
	});
	
	$("#emergencyCode,#secretCode").combobox({
		editable:false
		//required: true
	});
	
	/*$("input",$("#num").next("span")).blur(function(){  
        alert("ok");  
    });*/  

	
//	$('#synFormCategoryId').combobox(
//		editable:false, 
//		onSelect:function(record){
//			$("#formId").val(record.value);
//		}
//	});
}
function changeReceiveRemarkTR(){
	if($("input[name='isReceiveRemark']:checked").val()=="1"){
		$("#receiveRemark").textbox("enableValidation");
		$("#receiveRemark").css("width","85%");
		$("#receiveRemarkTR").show();
	}else{
		$("#receiveRemark").textbox("disableValidation");
		$("#receiveRemarkTR").hide();
	}
}
//绑定
function bindOffice(docId){
	if(officeData.length==0){
		return true;
	}
	var flag=false;
	$.ajax({
		   type: "POST",
		   url: _synergyContext+"/basic/office/bindDocId",
		   data: "listStr="+JSON.stringify(officeData)+"&docId="+docId,
		   dataType: "json",
		   async:false,
		   success: function(msg){
			   officeData.length=0;
			   flag=msg.state=="200";
		   }
		});
	return flag;
}

function addObj(objStr){
	var obj=$.parseJSON(objStr);
	officeData.push(obj);
}

function openEditOffice(){
	//需要获取到值的字段start
	//_issueId、_issueType 页面已有
	var formId=$("#formId").val();//处理单id
	//需要获取到值的字段end
	
	var vHeight = window.screen.height -80 ;	
	var fileReadOnly=false;//只读，流程勾选配置
	var clearDoc=false;//清稿，流程勾选配置
	var mergeDoc=false;//套红，流程勾选配置
	var signDoc=false;//签章，流程勾选配置
	
	var flag,fileName;
	if(officeData.length==0){
		flag="";
		fileName="";
		templateId="";
		sealId="";
	}else{
		var obj=officeData[officeData.length-1];
		flag=obj.flag;
		fileName=obj.fileName;
		templateId=obj.templateId;
		sealId=obj.sealId;
	}
	var wordUrl =_synergyContext+"/basic/office/editOfficeNoDocId" + "?docId=" +_issueId + "&formId="+formId+"&fileName="
	+fileName+"&templateId="+templateId+"&sealId="+sealId+"&docType="+_issueType+"&clearDocFlag="+clearDoc+"&limitNum="+limitObj.num+"&limitStr="+limitObj.str
	+"&mergeDocFlag="+mergeDoc+"&signDocFlag="+signDoc+"&fileReadOnly="+fileReadOnly+"&notkHeigth="+vHeight+"&workEffortId=isNew";
	//var winFeatures = "height="+vHeight+"px,width="+(window.screen.width-20)+"px,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no";
	//window.open(wordUrl,'_blank',winFeatures);
	 ntkoBrowser.openWindow(wordUrl);
}


function buildDisplayNumberDiv(type){
	var numberContent = "";
	if(type=="1"){
		numberContent = $("#numYear").val();
	}else if(type=="2"){
		numberContent = $("#numOrg").val()+"-"+$("#numYear").val()+"-"+$("#numMonth").val()
	}else if(type=="3"){
		numberContent = $('#numLine').combobox('getValue')+"-"+$('#numLineName').combobox('getValue')+"-"+$("#numYear").val()
	}else{
		alert("参数错误");
		return;
	}
	var data = "formId="+$("#formId").val()+"&numberContent="+numberContent+"&checkYear="+$("#numYear").val();
	$.ajax({  
		type: "POST",
		url:'<c:url value="/synNumber/getReceiveDisplayNumber"/>',
		data:data,
		async:false,
		//contentType: "application/x-www-form-urlencoded; charset=utf-8",
		success: function(json)
		{	
			if(json.state=="200"){
				$("#numberLogId").val(json.numberLogId);
				$("#numberId").val(json.numberId);
				$("#num").textbox("setValue",json.num);
				
			}else{
				$.messager.alert("提示","收文表单未绑定对应的收文编号或者未绑定权限！");
			}
			
			
		},
		error: function()
		{
			$.messager.alert("提示","编号获取失败！");
		}
    });
}

function downloadOfficeFile(){
	window.location.href=_synergyContext+'/basic/office/downLoadFile?docId='+$("#docId").val()+"&officeName="+$.trim(encodeURIComponent(encodeURIComponent($("#docName").textbox("getValue"))));
}

//function valNumRequired(){
//	var type = $("#formType").val();
//	if(type=="1"){
//		$("#displayNumberReceive").val($("#numYear").val()+"-"+$("#num").val());
//	}else if(type=="2"){
//		$("#displayNumberReceive").val($("#numOrg").val()+"-"+$("#numYear").val()+"-"+$("#numMonth").val()+"-"+$("#num").val());
//	}else if(type=="3"){
//		$("#displayNumberReceive").val($('#numLine').combobox('getValue')+"-"+$('#numLineName').combobox('getValue')+"-"+$("#numYear").val()+"-"+$("#num").val());
//	}else{
//		alert("参数错误");
//		return;
//	}
//	$.ajax({
//		type:"POST",
//		url:'<c:url value="/receive/valNumUnique"/>', 
//		data: "docId="+_issueId+"&displayNumberReceive="+$("#displayNumberReceive").val()+"&formId="+_formId,
//		success:function(msg){
//		   if(msg.state=="200"){
//			   
//		   }else{
//			   $.messager.alert('提示',"编号冲突，请修改！");
//		   }										
//		}
//	});
//}
function isNumberText(z_check_value){  
    var z_reg = /^([0-9]{4})$/;  
    return z_reg.test($.trim(z_check_value));  
}
$.extend($.fn.validatebox.defaults.rules, { 
	valNumUnique: { 
		validator: function(value,param){
			if(!isNumberText(value)){
				$.fn.validatebox.defaults.rules.valNumUnique.message ="请输入4位数字字符串";
				return false;
			}
			var boolNum = true;
			var type = $("#formType").val();
　　　　　　　if(type=="1"){
　　　　　		$("#displayNumberReceive").val($("#numYear").val()+"-"+value);
　　　　　　　}else if(type=="2"){
　　　　　　　　	$("#displayNumberReceive").val($("#numOrg").val()+"-"+$("#numYear").val()+"-"+$("#numMonth").val()+"-"+value);
　　　　　　　}else if(type=="3"){
　　　　　　　　	$("#displayNumberReceive").val($('#numLine').combobox('getValue')+"-"+$('#numLineName').combobox('getValue')+"-"+$("#numYear").val()+"-"+value);
　　　　　　　}
　　　　　　　$.ajax({
				async:false,
　　　　　　　　	type:"POST",
　　　　　　　　	url:'<c:url value="/receive/valNumUnique"/>', 
　　　　　　　		data: "docId="+_issueId+"&displayNumberReceive="+$("#displayNumberReceive").val()+"&formId="+_formId,
　　　　　　　		success:function(msg){
　　　　　　　　		if(msg.state=="200"){
　　　　　　　　			   
　　　　　　　　		}else{
　　　　　　　　			$.fn.validatebox.defaults.rules.valNumUnique.message ="编号冲突，请修改！";
　　　　　　　　			boolNum = false;
　　　　　　　　		}										
　　　　　　　　	}
			});
			return boolNum;
		}, 
　　　　　message: "" 
	}

}); 